package com.Ling.Thread.procuctorAndCustomer;

/**
 * File Name: program
 * Date: 2020-06-28 11:00
 * Author: liangling
 * Description是生产者消费者模式
 */
public class program {

    //生产者：

    /**
      作用：生产产品
      生产逻辑：通过一个生产标记，判断是否需要生产产品。
        如果需要生产：生产产品，并通知消费者消费。
        如果不需要生产，等待。
     */
    //消费者：

    /***
     * 作用：消费产品
     * x消费逻辑：消费产品，判断是否有足够的产品消费
     * 如果可以消费：获取产品，进行消费
     * 如果不可以消费：等待。
     */

    //生产和消费过程同时执行，用多线程实现

    public static void main(String[] args) {
        prosuctPool prosuctPool = new prosuctPool(15);

        new Procutor(prosuctPool).start();
        new Customer(prosuctPool).start();

    }
}
